package com.xjh.basestudy.designmode.behaviorMode.behaviorMode11_Interpreter;

/**
 * @Author XuJianHua
 * @Date 2022/10/6 23:24
 * @Description 非终极表达式
 * 所有终极表达式至此完成，我们将它们按一定顺序组合起来就是非终极表达式了。
 * 例如鼠标左键单击操作一定是由“按下左键”及“松开左键”两个原子操作组合而成，所以左键单击表达式应该包含鼠标左键按下表达式与鼠标左键松开表达式两个子表达式，

 */
public class LeftKeyClick implements Expression {

    private Expression leftKeyDown;
    private Expression leftKeyUp;

    public LeftKeyClick() {
        this.leftKeyDown = new LeftKeyDown();
        this.leftKeyUp = new LeftKeyUp();
    }

    public void interpret() {
        //单击=先按下再松开，于是分别调用二者的解释方法即可
        leftKeyDown.interpret();
        leftKeyUp.interpret();
    }

}